package com.rxmvp.rxmvpdemo.RxRetrofit;

import rx.Observable;
import rx.android.schedulers.AndroidSchedulers;
import rx.schedulers.Schedulers;

/**
 * 作者： huangRZ on 2017/1/21. 15:04
 * 邮箱：917647409@qq.com
 */
public class BaseTransformer<T> implements Observable.Transformer<T, T> {

    @Override
    public Observable<T> call(Observable<T> baseResponseObservable) {
        return baseResponseObservable
                .subscribeOn(Schedulers.io())
                .observeOn(AndroidSchedulers.mainThread())
                .unsubscribeOn(Schedulers.io())
                //设置这个后，规定时间内没有数据返回，则为超时，这时网络连接超时等操作将会无效
//                .timeout(5, TimeUnit.SECONDS)  //操作超时为5s
                .retry(3);  //重连3次
    }
}
